package com.yibo.manager.user;

import com.yibo.db.helper.QueryFilter;
import com.yibo.db.user.entity.ManagerUser;
import com.yibo.db.user.mapper.manageruser.ManagerUserMapper;
import com.yibo.manager.user.pojo.ManagerUserMsg;

import java.util.List;

/**
 * 后台管理用户模块
 *
 * @author zhanglei
 */
public interface ManagerUserService {


    /**
     * 过滤查询管理用户信息
     *
     * @param filter  过滤条件
     * @return    用户信息
     */
    QueryFilter<List<ManagerUser>>  queryList(QueryFilter filter);


    /**
     * 查询单个管理用户信息
     *
     * @param userId  用户ID
     * @return  用户信息
     */
    ManagerUser  queryOne(String userId);


    /**
     * 添加管理用户信息
     *
     * @param managerUser   管理用户信息
     * @return          添加结果
     */
    int  addUser(ManagerUser managerUser);


    /**
     * 更新用户信息
     *
     * @param managerUser  管理用户信息
     * @return   更新结果
     */
    int  updateUser(ManagerUser managerUser);


    /**
     * 删除单条管理用户信息
     *
     * @param userId  管理用户ID
     * @return   删除结果
     */
    int  deleteOne(String userId);


    /**
     * 登陆
     *
     * @param userId    用户ID
     * @param password  用户名称
     * @return      登陆结构
     */
    ManagerUserMsg login(String userId, String password);


    /**
     * 退出
     *
     * @return          退出结果
     */
    int   loginOut();

}
